New data profiles and application program interfaces (APIs) can add new functionality and features that may not be present in an existing operating system. However, a problem can arise in which new data profiles and APIs may not be compatible with existing legacy profiles and APIs. One solution to this problem could be to just create new APIs to replace the current legacy APIs being used by an operating system, or to just change the syntax of the legacy APIs to be able to obtain new functionality. However, this may not be desirable because an operating system could lose all support for the legacy applications that may still be useful and desirable to maintain for users. It may therefore be desirable for there to be a method that can allow an operating system to receive new functionality while maintaining interoperability with current legacy APIs without having to change any syntax of the legacy APIs.